package com.snow.java.base.junit;
/**
 * @类名称：
 * @类描述：
 * @author: bingHeng
 * @Date 2019.04.11
 * @Version: 1.0
*/
public interface MyInterface {

    /**
     * java 8接口中默认方法的类优先原则：
     *  若一个接口中定义了一个默认方法，而另外一个父类或接口中又定义了一个同名方法时：
     *  选择父类中的方法，如果一个父类提供了具体的实现，那么接口中具有相同名称和参数的默认方法会被忽略。
     *
     *  接口冲突，如果一个父类接口提供了一个默认方法，而另一个接口也提供了一个具有相同名称和参数列表的方法（不管方法是否是默认方法），
     *  那么必须覆盖该方法来解决冲突。
     */

    default void MyDefaultMethods(){
        System.out.println("Java 8 中允许接口里有多个带实现功能的默认方法");
    }

    static void MyStaticMethods() {
        System.out.println("Java 8中允许接口里有多个带有实现功能的静态方法");
    }
}
